#include<signal.h>
#include "EchoServer.h"


//#1  设置2和15号信号
//#2  在信号处理函数中停止主从事件循环和工作线程
//#3  服务程序主动退出

EchoServer *echoserver;
void Stop(int sign)   //信号2和15的处理函数，停止掉服务程序
{
    printf("signal=%d \n",sign);
    //调用EchoServer：：Stop（）
    echoserver->Stop();     
    printf("echoserver stop");
    delete echoserver;
    exit(0);
}

int main(int argc,char *argv[])
{
    if (argc != 3) 
    { 
        printf("usage: ./echoserver ip port\n"); 
        printf("example: ./echoserver 10.0.8.10 80\n\n"); 
        return -1; 
    }

    signal(SIGINT,Stop);   //捕捉2号信号
    signal(SIGTERM,Stop);   //捕捉15号信号
    // TcpServer tcpserver(argv[1],atoi(argv[2]));
    // tcpserver.start();      // 运行事件循环。

    echoserver=new EchoServer(argv[1],atoi(argv[2]),30,0);
    echoserver->Start();

    return 0;
}
